home *** CD-ROM | disk | FTP | other *** search
/ Programming Languages Suite / ProgLangD.iso / Borland Visual dBASE Professiona v7.0 / DATA1.CAB / Sample_dBASE / Mugs / Inventory.WFM < prev    next >
Text File  |  1997-11-20  |  10KB  |  393 lines

  1. //--------------------------------------------------------------
  2. //
  3. //  Inventory.wfm - Mugs Sample Application
  4. //
  5. //  Data entry from for Inventory table.
  6. //
  7. //  Dependencies: MUGS.CFM
  8. //                MUGS.CC
  9. //                INVENTORY.DMD
  10. //
  11. //  Visual dBASE Samples Group
  12. //
  13. //  $Revision:   1.16  $
  14. //
  15. //  Copyright (c) 1997, Borland International, Inc. 
  16. //  All rights reserved.
  17. //
  18. //---------------------------------------------------------------
  19. SET TALK OFF
  20. ** END HEADER -- do not remove this line
  21. //
  22. // Generated on 11/02/97
  23. //
  24. parameter bModal
  25. local f
  26. f = new inventoryForm()
  27. if (bModal)
  28.    f.mdi = false // ensure not MDI
  29.    f.readModal()
  30. else
  31.    f.open()
  32. endif
  33.  
  34. class inventoryForm of MUGSDATACFORM from "MUGS.CFM"
  35.    with (this)
  36.       onOpen = {; this.book1.slidezoom.setFocus()}
  37.       onClose = class::FORM_ONCLOSE
  38.       open = class::FORM_OPEN
  39.       height = 18
  40.       left = 5
  41.       top = 1
  42.       width = 61
  43.       text = "Inventory - Data Entry"
  44.    endwith
  45.  
  46.  
  47.    this.DMINVENTORY = new DATAMODREF()
  48.    this.DMINVENTORY.parent = this
  49.    with (this.DMINVENTORY)
  50.       filename = "inventory.dmd"
  51.       dataModClass = "InventoryDataModule"
  52.       share = 0
  53.       active = true
  54.       left = 0
  55.       top = 0
  56.    endwith
  57.  
  58.  
  59.    with (this.BOOK1)
  60.       height = 16
  61.       left = 1
  62.       top = 2.5
  63.       width = 58.1429
  64.       metric = 0
  65.       fontName = "MS Sans Serif"
  66.       fontSize = 8
  67.       dataSource = 'ARRAY {"Inventory Item"}'
  68.    endwith
  69.  
  70.  
  71.    this.BOOK1.LABELID = new TEXT(this.BOOK1)
  72.    with (this.BOOK1.LABELID)
  73.       height = 1
  74.       left = 1
  75.       top = 2
  76.       width = 14
  77.       metric = 0
  78.       colorNormal = "BtnText"
  79.       alignVertical = 1
  80.       transparent = true
  81.       fontName = "MS Sans Serif"
  82.       fontSize = 8
  83.       text = "ID:"
  84.    endwith
  85.  
  86.  
  87.    this.BOOK1.ENTRYID = new ENTRYFIELD(this.BOOK1)
  88.    with (this.BOOK1.ENTRYID)
  89.       enabled = false
  90.       height = 1
  91.       left = 16
  92.       top = 2
  93.       width = 9
  94.       metric = 0
  95.       dataLink = parent.parent.DMINVENTORY.ref.inventory1.rowset.fields["Item ID"]
  96.       picture = "9999999"
  97.       colorHighLight = ""
  98.       fontName = "MS Sans Serif"
  99.       fontSize = 8
  100.       borderStyle = 7
  101.    endwith
  102.  
  103.  
  104.    this.BOOK1.LABELSUPPLIER = new TEXT(this.BOOK1)
  105.    with (this.BOOK1.LABELSUPPLIER)
  106.       height = 1
  107.       left = 1
  108.       top = 3.25
  109.       width = 14
  110.       metric = 0
  111.       colorNormal = "BtnText"
  112.       transparent = true
  113.       fontName = "MS Sans Serif"
  114.       fontSize = 8
  115.       text = "Supplier:"
  116.    endwith
  117.  
  118.  
  119.    this.BOOK1.COMBOSUPPLIER = new COMBOBOX(this.BOOK1)
  120.    with (this.BOOK1.COMBOSUPPLIER)
  121.       height = 1.0909
  122.       left = 16
  123.       top = 3.2727
  124.       width = 30
  125.       metric = 0
  126.       dataLink = parent.parent.DMINVENTORY.ref.inventory1.rowset.fields["Supplier ID"]
  127.       fontName = "MS Sans Serif"
  128.       fontSize = 8
  129.       style = 2
  130.    endwith
  131.  
  132.  
  133.    this.BOOK1.TOOLSUPPLIER = new PUSHBUTTON(this.BOOK1)
  134.    with (this.BOOK1.TOOLSUPPLIER)
  135.       onClick = class::TOOLSUPPLIER_ONCLICK
  136.       height = 1.2
  137.       left = 47
  138.       top = 3.2
  139.       width = 4
  140.       text = ""
  141.       metric = 0
  142.       upBitmap = "RESOURCE #148"
  143.       disabledBitmap = "RESOURCE #149"
  144.       fontSize = 8
  145.       group = true
  146.       colorNormal = "BtnText/BtnFace"
  147.       value = false
  148.    endwith
  149.  
  150.  
  151.    this.BOOK1.LABELDESCRIPT = new TEXT(this.BOOK1)
  152.    with (this.BOOK1.LABELDESCRIPT)
  153.       height = 1
  154.       left = 1
  155.       top = 4.75
  156.       width = 14
  157.       metric = 0
  158.       colorNormal = "BtnText"
  159.       transparent = true
  160.       fontName = "MS Sans Serif"
  161.       fontSize = 8
  162.       text = "Description:"
  163.    endwith
  164.  
  165.  
  166.    this.BOOK1.ENTRYDESCRIPTION = new ENTRYFIELD(this.BOOK1)
  167.    with (this.BOOK1.ENTRYDESCRIPTION)
  168.       height = 1
  169.       left = 16
  170.       top = 4.75
  171.       width = 30
  172.       metric = 0
  173.       dataLink = parent.parent.DMINVENTORY.ref.inventory1.rowset.fields["Description"]
  174.       colorHighLight = ""
  175.       fontName = "MS Sans Serif"
  176.       fontSize = 8
  177.       validRequired = true
  178.       borderStyle = 7
  179.    endwith
  180.  
  181.  
  182.    this.BOOK1.LABELLEVEL = new TEXT(this.BOOK1)
  183.    with (this.BOOK1.LABELLEVEL)
  184.       height = 1
  185.       left = 1
  186.       top = 6
  187.       width = 14
  188.       metric = 0
  189.       colorNormal = "BtnText"
  190.       transparent = true
  191.       fontName = "MS Sans Serif"
  192.       fontSize = 8
  193.       text = "Inventory level:"
  194.    endwith
  195.  
  196.  
  197.    this.BOOK1.SPINQTY = new SPINBOX(this.BOOK1)
  198.    with (this.BOOK1.SPINQTY)
  199.       height = 1
  200.       left = 16
  201.       top = 6
  202.       width = 10
  203.       metric = 0
  204.       dataLink = parent.parent.DMINVENTORY.ref.inventory1.rowset.fields["Qty"]
  205.       picture = "99999"
  206.       colorHighLight = ""
  207.       rangeMax = 100
  208.       rangeMin = 1
  209.       fontName = "MS Sans Serif"
  210.       fontSize = 8
  211.       validRequired = true
  212.       borderStyle = 7
  213.    endwith
  214.  
  215.  
  216.    this.BOOK1.RECTANGLE1 = new RECTANGLE(this.BOOK1)
  217.    with (this.BOOK1.RECTANGLE1)
  218.       left = 1
  219.       top = 7.25
  220.       width = 13
  221.       height = 5.75
  222.       metric = 0
  223.       text = "Picture"
  224.       colorNormal = "WindowText/BtnFace"
  225.       fontName = "MS Sans Serif"
  226.       fontSize = 8
  227.    endwith
  228.  
  229.  
  230.    this.BOOK1.SLIDEZOOM = new SLIDER(this.BOOK1)
  231.    with (this.BOOK1.SLIDEZOOM)
  232.       onChange = class::SLIDEZOOM_ONCHANGE
  233.       height = 1.5
  234.       left = 2
  235.       top = 8.5
  236.       width = 11
  237.       metric = 0
  238.       colorNormal = "BtnFace"
  239.       borderStyle = 4
  240.       value = 1
  241.       rangeMax = 3
  242.       rangeMin = 1
  243.       vertical = false
  244.       enableSelection = false
  245.       startSelection = -1
  246.       endSelection = -1
  247.    endwith
  248.  
  249.  
  250.    this.BOOK1.LABELZOOM = new TEXT(this.BOOK1)
  251.    with (this.BOOK1.LABELZOOM)
  252.       height = 1
  253.       left = 2
  254.       top = 10.1176
  255.       width = 11
  256.       metric = 0
  257.       colorNormal = "BtnText"
  258.       alignHorizontal = 1
  259.       transparent = true
  260.       fontName = "MS Sans Serif"
  261.       fontSize = 8
  262.       text = "Zoom"
  263.    endwith
  264.  
  265.  
  266.    this.BOOK1.BUTTONREPLACE = new PUSHBUTTON(this.BOOK1)
  267.    with (this.BOOK1.BUTTONREPLACE)
  268.       onClick = class::BUTTONREPLACE_ONCLICK
  269.       height = 1.2
  270.       left = 2
  271.       top = 11.2941
  272.       width = 11
  273.       text = "Replace"
  274.       metric = 0
  275.       fontName = "MS Sans Serif"
  276.       fontSize = 8
  277.       group = true
  278.       colorNormal = "BtnText/BtnFace"
  279.       value = false
  280.    endwith
  281.  
  282.    this.BOOK1.IMAGEEMPTY = new IMAGE(this.BOOK1)
  283.    with (this.BOOK1.IMAGEEMPTY)
  284.       visible = false
  285.       height = 3.75
  286.       left = 16
  287.       top = 7.45
  288.       width = 12.5
  289.       metric = 0
  290.       dataSource = "FILE NOIMAGE.GIF"
  291.       alignment = 3
  292.    endwith
  293.  
  294.  
  295.    this.BOOK1.IMAGEMUG = new IMAGE(this.BOOK1)
  296.    with (this.BOOK1.IMAGEMUG)
  297.       height = 3.75
  298.       left = 16
  299.       top = 7.45
  300.       width = 12.5
  301.       metric = 0
  302.       dataSource = parent.parent.DMINVENTORY.ref.inventory1.rowset.fields["Picture"]
  303.       alignment = 3
  304.    endwith
  305.  
  306.  
  307.    this.rowset = this.DMINVENTORY.ref.inventory1.rowset
  308.  
  309.    // {Linked Method} form.open
  310.    function Form_Open 
  311.       this.book1.TOOLSUPPLIER.enabled := ( TYPE("this.app") == "O" )
  312.       this.book1.IMAGEEMPTY.visible := false
  313.  
  314.       // add custom properties
  315.       this.book1.IMAGEMUG.baseWidth  = this.book1.IMAGEMUG.width
  316.       this.book1.IMAGEMUG.baseHeight = this.book1.IMAGEMUG.height
  317.       this.rowset.form = this
  318.  
  319.       with ( this.rowset )
  320.          onAppend   := class::rowOnAppend
  321.          onNavigate := class::checkImage 
  322.       endwith
  323.      
  324.       this.title.text := "<h2>Inventory</h2>"
  325.       this.rowset.refreshControls()
  326.    return ( SUPER::FORM_OPEN() )
  327.  
  328.    function rowOnAppend
  329.       local q
  330.       q = new Query()
  331.       with (q)
  332.          database := this.parent.database
  333.          sql      := 'select supplier."Company" from supplier'
  334.          active   := true
  335.       endwith
  336.       this.fields["Supplier ID"].value := q.rowset.fields[1].value
  337.       q.active := false
  338.    return true
  339.  
  340.    // {Linked Method} form.onClose
  341.    function Form_onClose
  342.       this.rowset.form := null // remove extra reference
  343.    return ( this.rowset.form )
  344.  
  345.    function checkImage
  346.       local bEmpty
  347.       bEmpty = true
  348.       if ( not this.endOfSet )
  349.          bEmpty := EMPTY( this.fields["Picture"].value )      
  350.       endif
  351.       if ( this.form.book1.IMAGEMUG.visible == bEmpty )
  352.          this.form.book1.IMAGEMUG.visible   := ( not bEmpty )
  353.          this.form.book1.IMAGEEMPTY.visible := ( bEmpty ) 
  354.       endif
  355.    return ( bEmpty )
  356.   
  357.  
  358.    // {Linked Method} form.book1.buttonreplace.onClick
  359.    function BUTTONREPLACE_onClick
  360.       local bResult, sImage, thisRow, iMug
  361.       bResult = false
  362.       sImage  = GetFile("*.bmp","Replace Picture")
  363.       thisRow = this.form.rowset
  364.       iMug    = this.form.book1.IMAGEMUG
  365.       if ( FILE(sImage) )
  366.          bResult := thisRow.fields["Picture"].replaceFromFile( sImage )
  367.          if ( iMug.dataSource <> thisRow.fields["Picture"] )
  368.             iMug.dataSource := thisRow.fields["Picture"]
  369.          endif         
  370.         thisRow.refreshControls()
  371.       endif
  372.    return ( bResult )
  373.    
  374.  
  375.    // {Linked Method} form.book1.slidezoom.onChange
  376.    function SLIDEZOOM_onChange     
  377.       local iMug
  378.       iMug = this.form.book1.imageMug
  379.       iMug.width  := ( iMug.baseWidth  * this.value )
  380.       iMug.height := ( iMug.baseHeight * this.value )
  381.       if ( this.form.height < iMug.top + iMug.height + 5 )
  382.          this.form.height := iMug.top + iMug.height + 5
  383.       endif      
  384.    return ( this.setFocus() )
  385.  
  386.    // {Linked Method} form.book1.toolsupplier.onClick
  387.    function TOOLSUPPLIER_onClick
  388.       local nID
  389.       nID = this.form.DMINVENTORY.Ref.supplier1.rowset.Fields["Supplier ID"].value
  390.    return ( this.form.app.openSupplierFormAsDialog( nID ) )
  391.       
  392. endclass
  393.